package huawei_nowcoder;

import java.util.Scanner;

/**
 * @Description: 蛇形矩阵
 * @Date: 2020/4/23
 * @Author: 许群星
 */
public class _34_SnakeMatrix {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        while (sc.hasNext()) {
            int n=sc.nextInt();

            int colBegin=0;
            for (int i = 0; i < n; i++) {
                if (i==0)
                    colBegin+=1;
                else
                    colBegin+=i;
                int rowBegin=colBegin;//起始
                if (i==n-1)
                    System.out.print(rowBegin);
                else
                    System.out.print(rowBegin+" ");
                int between=i+2;
                for (int j = 0; j < n-i-1; j++) {
                    rowBegin+=between+j;
                    if (j==n-i-2)
                        System.out.print(rowBegin);
                    else{
                        System.out.print(rowBegin+" ");
                    }
                }
                System.out.println();
            }
        }
    }
}
/*
题目描述
题目说明
蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。
样例输入
5
样例输出
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
接口说明
原型
void GetResult(int Num, char * pResult);
输入参数：
        int Num：输入的正整数N
输出参数：
        int * pResult：指向存放蛇形矩阵的字符串指针
        指针指向的内存区域保证有效
返回值：
        void
输入描述:
输入正整数N（N不大于100）

输出描述:
输出一个N行的蛇形矩阵。
示例1
输入
复制
4
输出
复制
1 3 6 10
2 5 9
4 8
7
 */